/* ==============================
   PATROCINADORES (patrocinadores.html)
============================== */

.section-header{
  max-width: 1100px;
  margin: 22px auto 18px;
  padding: 22px 18px;
  border-radius: 18px;
  background: radial-gradient(circle at top, #1b1b1b, #050505);
  border: 1px solid rgba(245,196,67,0.25);
  box-shadow: 0 0 18px rgba(0,0,0,0.85);
  text-align: center;
}

.section-header h1{
  font-size: 2.1rem;
  color: #f5c443;
  margin-bottom: 10px;
}

.section-header p{
  color: #cfcfcf;
  line-height: 1.6;
  max-width: 820px;
  margin: 0 auto;
}

/* ===== GRID DE LOGOS ===== */
.sponsor-grid-section{
  max-width: 1100px;
  margin: 0 auto 26px;
}

.sponsor-grid-title{
  text-align: center;
  color: #f5c443;
  font-size: 1.2rem;
  margin: 16px 0 16px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.sponsor-grid{
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 14px;
}

@media (max-width: 1100px){
  .sponsor-grid{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 650px){
  .sponsor-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

.sponsor-card{
  position: relative;
  background: rgba(8,8,8,0.95);
  border-radius: 16px;
  border: 1px solid #2a2a2a;
  padding: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 110px;
  overflow: hidden;
  transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease, background .25s ease;
}

.sponsor-card:hover{
  transform: translateY(-3px);
  border-color: #f5c443;
  box-shadow: 0 0 20px rgba(245,196,67,0.55);
  background: rgba(12,12,12,0.98);
}

.sponsor-card img{
  width: 100%;
  height: 70px;
  object-fit: contain;
  filter: drop-shadow(0 0 10px rgba(245,196,67,0.12));
}

/* ===== CTA + FORM ===== */
.sponsor-cta-section{
  max-width: 1100px;
  margin: 0 auto 50px;
}

.sponsor-cta-title{
  text-align: center;
  color: #f5c443;
  font-size: 1.55rem;
  margin-top: 16px;
  margin-bottom: 8px;
}

.sponsor-cta-subtitle{
  text-align: center;
  color: #cfcfcf;
  max-width: 820px;
  margin: 0 auto 18px;
  line-height: 1.6;
}

.sponsor-cta-card{
  border-radius: 20px;
  border: 1px solid rgba(245,196,67,0.25);
  background: radial-gradient(circle at top left, #222 0, #050505 55%, #000 100%);
  box-shadow: 0 0 20px rgba(0,0,0,0.9);
  overflow: hidden;
}

.sponsor-cta-inner{
  padding: 20px 18px 18px;
}

.sponsor-cta-form{
  display: grid;
  gap: 14px;
}

.sponsor-field{
  text-align: left;
}

.sponsor-label{
  display: block;
  color: #f5c443;
  font-size: 0.9rem;
  margin-bottom: 6px;
}

.sponsor-input,
.sponsor-select,
.sponsor-textarea{
  width: 100%;
  padding: 10px 11px;
  border-radius: 12px;
  border: 1px solid #333;
  background: #0c0c0c;
  color: #fff;
  font-size: 0.95rem;
  outline: none;
}

.sponsor-textarea{
  min-height: 120px;
  resize: vertical;
}

.sponsor-input:focus,
.sponsor-select:focus,
.sponsor-textarea:focus{
  border-color: rgba(245,196,67,0.85);
  box-shadow: 0 0 10px rgba(245,196,67,0.25);
}

.sponsor-hint{
  margin-top: 8px;
  font-size: 0.82rem;
  color: #bdbdbd;
  line-height: 1.4;
}

.sponsor-submit-btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  padding: 11px 14px;
  border-radius: 999px;
  border: none;
  cursor: pointer;
  background: #f5c443;
  color: #000;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.sponsor-submit-btn:hover{
  transform: translateY(-1px);
  box-shadow: 0 0 18px rgba(245,196,67,0.65);
  background: #ffde66;
}

/* Mensaje éxito */
.sponsor-success{
  display: none;
  margin-top: 8px;
  padding: 12px 12px;
  border-radius: 14px;
  border: 1px solid rgba(46, 204, 113, 0.35);
  background: rgba(46, 204, 113, 0.12);
  color: #d7ffe6;
  line-height: 1.45;
}

.sponsor-success.show{
  display: block;
}
